Gitを本格的にマスターするには、ユーザーに優しいインターフェースの表面を越え、 ポラシング コマンドの背後にある プラミング——Gitの内部オブジェクトデータベースを管理する低レベルなエンジンです。このデータベースは、すべてのデータが変更不可能なオブジェクトとして保存されるコンテンツアドレス可能なファイルシステムです。
1. ポラシングとプラミング
ポラシング とは、人間向けに設計された高レベルなコマンド(例: git status)を指します。 プラミング とは、Gitのオブジェクトデータベースを直接操作する低レベルなコマンドを指し、Gitの真の内部構造にアクセスできるようにします。
2. オブジェクトデータベース
Gitは .git/objects ディレクトリ内にキー・バリュー形式のストアとして動作し、内部オブジェクトを保管しています: blob、 tree、 commit、および tag。ブランチはオブジェクトとよく話題にされますが、これらコミットへの参照として機能します。
3. SHA-1アドレス指定
すべてのオブジェクトは、固有の40文字の16進数で構成されたSHA-1チェックサムによって識別されます。Gitは最初の2文字をサブディレクトリ名として使用することでストレージを最適化します(例: af/)として、残りの38文字をファイル名として利用します。
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>